(make_event_array): Ignore bits above CHAR_META.
authorRichard M. Stallman <rms@gnu.org>
Mon, 7 Jun 1993 05:30:07 +0000 (05:30 +0000)
committerRichard M. Stallman <rms@gnu.org>
Mon, 7 Jun 1993 05:30:07 +0000 (05:30 +0000)
src/alloc.c

index a6f554ad0861411e76dfa595cbf783c74c3e15dd..e78db2af9a64fb505148f54aa35051054cac09fd 100644 (file)
@@ -958,9 +958,10 @@ make_event_array (nargs, args)
 
   for (i = 0; i < nargs; i++)
     /* The things that fit in a string
-       are characters that are in 0...127 after discarding the meta bit.  */
+       are characters that are in 0...127,
+       after discarding the meta bit and all the bits above it.  */
     if (XTYPE (args[i]) != Lisp_Int
-       || (XUINT (args[i]) & ~CHAR_META) >= 0200)
+       || (XUINT (args[i]) & ~(-CHAR_META)) >= 0200)
       return Fvector (nargs, args);
 
   /* Since the loop exited, we know that all the things in it are